#include <algorithm>
#include <vector>
#include <iostream>

using namespace std;

void printVec(vector<int> &);

int main()
{
    vector<int> vec{1, 2, 3, 4, 5, 6};
    fill(vec.begin(), vec.end(), 0); // 将每个元素重置为 0
    printVec(vec);

    // 将容器的一个子序列设置为 10
    fill(vec.begin(), vec.begin() + vec.size() / 2, 10);
    printVec(vec);

    vector<int> vec2; // 空向量
    fill_n(vec2.begin(), vec2.size(), 0); // 将所有元素重置为 0
    // 灾难：修改 vec2 中的 10 个（不存在）元素
    // fill_n(vec2.begin(), 10, 0);
}

void printVec(vector<int> &v)
{
    for (int ival : v)
        cout << ival << " ";
    cout << endl;
}